//package com.example.spring_mysql.configuration
//
//import org.springframework.beans.factory.ObjectProvider
//import org.springframework.beans.factory.annotation.Autowired
//import org.springframework.boot.autoconfigure.http.HttpMessageConverters
//import org.springframework.boot.autoconfigure.web.servlet.WebMvcRegistrations
//import org.springframework.context.annotation.Configuration
//import org.springframework.http.converter.HttpMessageConverter
//import org.springframework.web.servlet.config.annotation.InterceptorRegistry
//import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry
//import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport
//
///**
// * @author: sz
// * @date: 2022/8/29 11:10
// * @description: WebMvc配置, 注意这里，实现@WebMvcConfigurer会导致全局jackson配置失效
// */
//@Configuration
//class WebMvcConfiguration : WebMvcConfigurationSupport(), WebMvcRegistrations {
//    @Autowired
//    lateinit var messageConverters: ObjectProvider<HttpMessageConverters>
//
//    /**
//     * 两种解决方案:
//     * - 一、 使用 WebMvcConfigurer 而非WebMvcConfigurationSupport
//     * - 二、 使用此方法
//     *
//     *
//     * 参考WebMvcAutoConfiguration类中configureMessageConverters方法，使Jackson配置生效
//     *
//     * @param converters
//     */
//    override fun configureMessageConverters(converters: MutableList<HttpMessageConverter<*>?>) {
//        messageConverters!!.ifAvailable { customConverters: HttpMessageConverters ->
//            converters.addAll(
//                customConverters.converters
//            )
//        }
//    }
//
//    public override fun addResourceHandlers(registry: ResourceHandlerRegistry) {
//        registry.addResourceHandler("/**")
//            .addResourceLocations("classpath:/static/")
//            .addResourceLocations("classpath:/templates/")
//            .addResourceLocations("classpath:/META-INF/resources/")
//    }
//
//    override fun addInterceptors(registry: InterceptorRegistry) {
//        super.addInterceptors(registry)
//    }
//}
